Check 3DS Enrollment
Request to check a cardholder's enrollment in the 3DSecure scheme.
Authentication Copied to clipboard
This operation requires authentication via one of the following methods:
- Certificate authentication.
-
To authenticate to the API two additional NVP parameters must be supplied in the request.
Provide 'merchant.
<your gateway merchant ID>
' in the apiUsername field and your API password in the apiPassword field.
Request Copied to clipboard
Fields Copied to clipboard
REQUIRED
Information on 3DSecure fields.
REQUIRED
A collection of parameters required to build the HTML form that is redirected to the ACS.
There are two options to generate the redirect page used to transfer the cardholder to the card Issuer's Access Control Server (ACS) for authentication:
1. Simple: submit the form generated by the gateway. In this case, only the htmlBodyContent parameter is required.
2. Customized: for those merchants who wish to customise the submission. In this case, the acsURL and paReq parameters will be required to formulate the submission.
Note: This field will only be returned in the event of a successful directory server lookup.
Enumeration
Indicates the option (Simple or Customized) used to generate the page that redirects the cardholder to the card Issuer's Access Control Server (ACS) for authentication.
The response to the Check 3DS Enrollment operation will include the information required for the selected option. By default, the Simple option is used.
An enumeration to allow a user to specify if they wish to adopt a customized solution or a simple solution.
Value must be a member of the following list. The values are case sensitive.
CUSTOMIZED
A strategy to indicate that the user wishes to customize the response
SIMPLE
A simple interaction model where the response is complete and no user intervention is required.
Url
REQUIRED
The URL to which you want to redirect the payer after completing the payer authentication process.
Typically, this will be the merchant's website URL, which must be URL encoded for special characters such spaces, hyphens, etc.
Ensure that the URL begins with 'https' and is longer than 11 characters.
The details required by the system to generate the HTML page as specified in the Simple option.
Enumeration
The encoding required for the HTML returned in the response, through htmlBodyContent parameter.
The available HTML Encoding options that a client may request.
Value must be a member of the following list. The values are case sensitive.
ASCII
ISO_8859_1
Latin1
UTF_8
Alphanumeric + additional characters
Background color of the page, encoded in HEX, rendered in the cardholder's browser while the browser is waiting for the authentication to commence.
By default, the color is set to #FFFFFF.
Data may consist of the characters 0-9, a-z, A-Z, '#'
String
Text on the button that the cardholder can use to redirect the browser to the card Issuer's Access Control Server (ACS) if JavaScript is disabled for their browser.
By default, the button text is set to "Click here to continue".
Data can consist of any characters
String
Title of the page rendered in the cardholder's browser while the browser is waiting for the authentication to commence.
By default, the title is set to "Process secure Payment".
Data can consist of any characters
String
An optional field that the merchant may supply in the Transaction Request as a description of the transaction.
If supported by the ACS, this description will be displayed on the authentication page where the cardholder types in their secret password.
Data can consist of any characters
ASCII Text
REQUIRED
A unique identifier supplied by the merchant for the authentication.
It is first defined in the check3DSEnrollment operation, and then included in subsequent operations.It is not used when the authentication is performed externally.
Data consists of ASCII characters
String
= CHECK_3DS_ENROLLMENT
FIXED
Any sequence of zero or more unicode characters.
String
A transient identifier for the request, that can be used to match the response to the request.
The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.
Data can consist of any characters
Information specific to the use of dynamic currency conversion (DCC).
Enumeration
REQUIRED
Status indicating how the payer acted on the DCC offer that you presented on the payment page.
Value must be a member of the following list. The values are case sensitive.
ACCEPTED
The payer accepted the DCC offer presented to them and will pay in their own currency.
DECLINED
The payer declined the DCC offer presented to them and will pay in your transaction currency.
NOT_OFFERED
DCC was not offered to the payer as a rate quote was not available for this transaction.
Decimal
The total amount of the transaction in the payer's currency.
You must include this field if the payer accepted the DCC offer you presented to them.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Upper case alphabetic text
The currency of the DCC rate quote provided by your DCC Service Provider.
The currency must be expressed as an ISO 4217 alpha code, e.g. USD and must be different to that provided for transaction currency. You must include this field if the payer accepted the DCC offer you presented to them.
Data must consist of the characters A-Z
Alphanumeric + additional characters
REQUIRED
The unique identifier issued to you by your payment provider.
Data may consist of the characters 0-9, a-z, A-Z, '-', '_'
REQUIRED
Information about the order associated with this transaction.
Decimal
REQUIRED
The total amount for the order.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Upper case alphabetic text
REQUIRED
The currency of the order expressed as an ISO 4217 alpha code, e.g. USD.
Data must consist of the characters A-Z
ASCII Text
Identifier of the payment session containing values for any of the request fields to be used in this operation.
Values provided in the request will override values contained in the session.
Data consists of ASCII characters
ASCII Text
Use this field to implement optimistic locking of the session content.
Do this if you make business decisions based on data from the session and wish to ensure that the same data is being used for the request operation.
To use optimistic locking, record session.version when you make your decisions, and then pass that value in session.version when you submit your request operation to the gateway.
If session.version provided by you does not match that stored against the session, the gateway will reject the operation with error.cause=INVALID_REQUEST.
See Making Business Decisions Based on Session Content.
Data consists of ASCII characters
The details describing the source of the funds to be used.
For card payments these may be represented by combining one or more of the following: explicitly provided card details, a session identifier which the gateway will use to look up the card details and/or a card token. Precedence rules will be applied in that explicitly provided card details will override session card details which will override card token details. Each of these may represent partial card details, however the combination must result in a full and complete set of card details. See Using Multiple Sources of Card Details for examples.
Information about the source of funds when it is directly provided (as opposed to via a token or session).
For browser payments, the source of funds details are usually collected from the payer on the payment provider's website and provided to you when you retrieve the transaction details (for a successful transaction). However, for some payment types (such as giropay), you must collect the information from the payer and supply it here.
Details as shown on the card.
REQUIRED
Expiry date, as shown on the card.
Digits
REQUIRED
Month, as shown on the card.
Months are numbered January=1, through to December=12.
Data is a number between 1 and 12 represented as a string.
Digits
REQUIRED
Year, as shown on the card.
The Common Era year is 2000 plus this value.
Data is a string that consists of the characters 0-9.
Digits
Credit card number as printed on the card.
Data is a string that consists of the characters 0-9.
Alphanumeric
Uniquely identifies a card and associated details.
Data may consist of the characters 0-9, a-z, A-Z
Response Copied to clipboard
Fields Copied to clipboard
ALWAYS PROVIDED
Data representing the 3DS results or enrollment state
Alphanumeric
The Electronic Commerce Indicator returned by the card issuer in the authentication response message.
It indicates the level of security and authentication of the transaction.
Data may consist of the characters 0-9, a-z, A-Z
ALWAYS PROVIDED
A collection of parameters required to build the HTML form that is redirected to the ACS.
There are two options to generate the redirect page used to transfer the cardholder to the card Issuer's Access Control Server (ACS) for authentication:
1. Simple: submit the form generated by the gateway. In this case, only the htmlBodyContent parameter is required.
2. Customized: for those merchants who wish to customise the submission. In this case, the acsURL and paReq parameters will be required to formulate the submission.
The customized field is the response returned for those merchants who wish to customise the submission.
In this case, the acsURL and paReq parameters will be required to formulate the submission.
Url
ALWAYS PROVIDED
The URL of the card Issuer's Access Control Server (ACS) where the cardholder can be authenticated.
Ensure that the URL begins with 'https' and is longer than 11 characters.
ASCII Text
ALWAYS PROVIDED
The Payer Authentication Request (PAReq) message that is sent to the card Issuer's Access Control Server (ACS) to initiate authentication of the cardholder.
It contains all of the information required by the ACS to perform the authentication. PAReq should be sent to the ACS URL unaltered.
Data consists of ASCII characters
The simple field is the response returned to those merchants who have chosen the simple option for form submission.
In this case, only the htmlBodyContent parameter is required to formulate the submission.
String
ALWAYS PROVIDED
The generated form to post to the cardholder's browser.
The form will redirect the browser to card Issuer's Access Control Server (ACS) where the cardholder can be authenticated. The form contains all of the information required by the ACS for authentication.
Data can consist of any characters
Base64
The base64 encoded value generated by the card issuer.
Included in subsequent transaction request messages and used by the card scheme to verify that the authentication occurred and the values provided are valid. The token should be used unaltered.
This field corresponds to the Cardholder Authentication Verification Value (CAVV) for Visa, the Accountholder Authentication Value (AAV) for MasterCard and JCB, or the American Express Verification Value (AEVV) for American Express.
Data is Base64 encoded
Enumeration
ALWAYS PROVIDED
The summarized response from the card issuer and the payment gateway indicating the overall status of the attempt to authenticate the cardholder.
For detailed information on the authentication result, see gatewayCode.
Value must be a member of the following list. The values are case sensitive.
AUTHENTICATION_ATTEMPTED
Authentication was attempted but the card issuer did not perform the authentication
AUTHENTICATION_FAILED
The cardholder failed the authentication.
AUTHENTICATION_NOT_AVAILABLE
An internal error occurred and Authentication is not currently available.
AUTHENTICATION_SUCCESSFUL
The cardholder was successfully authenticated.
CARD_DOES_NOT_SUPPORT_3DS
The card does not support 3DS authentication.
CARD_ENROLLED
The card is enrolled for 3DS authentication.
CARD_NOT_ENROLLED
The card is not enrolled for 3DS authentication.
Base64
A unique transaction identifier generated by the Payment Gateway on behalf of the merchant to identify the 3DS transaction.
This field is mandatory for Verified By Visa transactions if authentication was available. The XID should be used in operation requests unaltered.
Data is Base64 encoded
ASCII Text
ALWAYS PROVIDED
A unique identifier supplied by the merchant for the authentication.
It is first defined in the check3DSEnrollment operation, and then included in subsequent operations.
It is not used when the authentication is performed externally.
Data consists of ASCII characters
String
A transient identifier for the request, that can be used to match the response to the request.
The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.
Data can consist of any characters
Information specific to the use of dynamic currency conversion (DCC).
Enumeration
ALWAYS PROVIDED
Status indicating how the payer acted on the DCC offer that you presented on the payment page.
Value must be a member of the following list. The values are case sensitive.
ACCEPTED
The payer accepted the DCC offer presented to them and will pay in their own currency.
DECLINED
The payer declined the DCC offer presented to them and will pay in your transaction currency.
NOT_OFFERED
DCC was not offered to the payer as a rate quote was not available for this transaction.
Decimal
The total amount of the transaction in the payer's currency.
You must include this field if the payer accepted the DCC offer you presented to them.
A sequence of digits 0-9 separated by a '.' as a decimal indicator. Leading and trailing zeroes are optional. If the fractional part is zero, the '.' and following zero(es) can be omitted. (For a complete description, see http://www.w3.org/TR/xmlschema-2/#decimal.)
Upper case alphabetic text
The currency of the DCC rate quote provided by your DCC Service Provider.
The currency must be expressed as an ISO 4217 alpha code, e.g. USD and must be different to that provided for transaction currency. You must include this field if the payer accepted the DCC offer you presented to them.
Data must consist of the characters A-Z
Alphanumeric + additional characters
ALWAYS PROVIDED
The unique identifier issued to you by your payment provider.
Data may consist of the characters 0-9, a-z, A-Z, '-', '_'
ALWAYS PROVIDED
A collection of information that is specific to responses from the API.
ALWAYS PROVIDED
The response code which indicates the status.
Enumeration
ALWAYS PROVIDED
The detailed response from the payment gateway to indicate the status of the 3DS authentication.
The result of a 3DS request to the gateway.
Value must be a member of the following list. The values are case sensitive.
ACS_SESSION_TIMEOUT
The session with the Issuer's ACS timed out. The cardholder did not return from the ACS session.
AUTHENTICATION_ATTEMPTED
The Merchant attempted to authenticate the cardholder with the card Issuer, but the card Issuer did not perform authentication of the card. Proof of authentication attempt was provided.
AUTHENTICATION_FAILED
The cardholder failed authentication by the card Issuer.
AUTHENTICATION_NOT_AVAILABLE_ERROR_DETAILS_PROVIDED
The response received from the card issuer's ACS (PARes) indicated that authentication of the cardholder could not be completed as technical or other issues were encountered by the Issuer's ACS. Error details (IReq) provided.
AUTHENTICATION_NOT_AVAILABLE_NO_ERROR_DETAILS
The response received from the card issuer's ACS (PARes) indicated that authentication of the cardholder could not be completed as technical or other issues were encountered by the Issuer's ACS. No error details (IReq) were provided.
AUTHENTICATION_SUCCESSFUL
The cardholder was successfully authenticated by the card Issuer.
CARD_DOES_NOT_SUPPORT_3DS
The card does not support 3D Secure authentication.
CARD_ENROLLED
Card holder is enrolled.
ENROLLMENT_STATUS_UNDETERMINED_ERROR_DETAILS_PROVIDED
The Issuer's ACS was not able to process the request to check enrollment or the card is ineligible (e.g. it is a Commercial card). The ACS did not provide any further details in the response.
ENROLLMENT_STATUS_UNDETERMINED_NO_ERROR_DETAILS
The Issuer's ACS was not able to process the request to check enrollment or the card is ineligible (e.g. it is a Commercial card). The ACS did not provide any further details in the response.
ERROR_COMMUNICATING_WITH_DIRECTORY_SERVER
An error communicating with the Directory Server was encountered.
ERROR_PARSING_AUTHENTICATION_RESPONSE
Error parsing Payer Authentication Response (PARes) received from the ACS.
ERROR_PARSING_CHECK_ENROLLMENT_REQUEST
Occurs when the request is incorrectly formatted. For example, the Merchant Id is longer than maximum allowed. Will generally only occur as a result of a defect in PS.
ERROR_PARSING_CHECK_ENROLLMENT_RESPONSE
Error parsing Verify Enrollment Response (VERes) received from the ACS.
INVALID_DIRECTORY_SERVER_CREDENTIALS
Merchant ID and Password failed authentication with the Directory Server (Contact Support to rectify)
INVALID_SIGNATURE_ON_AUTHENTICATION_RESPONSE
Error validating signature on response received from the ACS.
MPI_PROCESSING_ERROR
Internal processing error
NOT_ENROLLED_ERROR_DETAILS_PROVIDED
Card holder is not enrolled. Error details were returned by the Directory Server.
NOT_ENROLLED_NO_ERROR_DETAILS
Card holder is not enrolled. No error details were returned by the Directory Server.
Errors Copied to clipboard
Information on possible error conditions that may occur while processing an operation using the API.
Enumeration
Broadly categorizes the cause of the error.
For example, errors may occur due to invalid requests or internal system failures.
Value must be a member of the following list. The values are case sensitive.
INVALID_REQUEST
The request was rejected because it did not conform to the API protocol.
REQUEST_REJECTED
The request was rejected due to security reasons such as firewall rules, expired certificate, etc.
SERVER_BUSY
The server did not have enough resources to process the request at the moment.
SERVER_FAILED
There was an internal system failure.
String
Textual description of the error based on the cause.
This field is returned only if the cause is INVALID_REQUEST or SERVER_BUSY.
Data can consist of any characters
String
Indicates the name of the field that failed validation.
This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.
Data can consist of any characters
String
Indicates the code that helps the support team to quickly identify the exact cause of the error.
This field is returned only if the cause is SERVER_FAILED or REQUEST_REJECTED.
Data can consist of any characters
Enumeration
Indicates the type of field validation error.
This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.
Value must be a member of the following list. The values are case sensitive.
INVALID
The request contained a field with a value that did not pass validation.
MISSING
The request was missing a mandatory field.
UNSUPPORTED
The request contained a field that is unsupported.
Enumeration
A system-generated high level overall result of the operation.
Value must be a member of the following list. The values are case sensitive.
ERROR
The operation resulted in an error and hence cannot be processed.